
[dbo].[amsp_CMNavMenuRenum]
CREATE procedure amsp_CMNavMenuRenum AS
BEGIN
DECLARE
@NavMenuID numeric,
@NewSortOrder numeric,
@SortIncrement integer,
@NumNavMenuItems integer
CREATE TABLE #temp (
ID Numeric Identity not null,
NavMenuID numeric,
SortOrder numeric)
BEGIN TRANSACTION
INSERT INTO #temp (NavMenuID, SortOrder)
SELECT NavMenuID, SortOrder
FROM Nav_Menu
WHERE NavContentGroupInd = 'N'
ORDER BY SortOrder
INSERT INTO #temp (NavMenuID, SortOrder)
SELECT NavMenuID, SortOrder
FROM Nav_Menu
WHERE NavContentGroupInd = 'C'
ORDER BY SortOrder
SELECT @NumNavMenuItems = count(*)
FROM Nav_Menu
SET @SortIncrement = CEILING(999990000.0 / @NumNavMenuItems) - 1
UPDATE #temp
SET SortOrder = ID * @SortIncrement
CREATE UNIQUE INDEX IDX_TEMP_1 ON #temp(NavMenuID)
UPDATE Nav_Menu
SET SortOrder = t.SortOrder
FROM #temp t
WHERE Nav_Menu.NavMenuID = t.NavMenuID
COMMIT TRANSACTION
END
GO
GRANT EXECUTE ON [dbo].[amsp_CMNavMenuRenum] TO [IMIS]
GO